package com.small.sentinel.slots.block;

public class RuleConstant {


    /**
     * 线程数
     */
    public static final int FLOW_GRADE_THREAD = 0;
    /**
     * qps
     */
    public static final int FLOW_GRADE_QPS = 1;

    public static final String LIMIT_APP_DEFAULT = "default";

    public static final String LIMIT_APP_OTHER = "other";

    //------------权限校验-------------------
    /**
     * 白名单
     */
    public static final int AUTHORITY_WHITE = 0;
    /**
     * 黑名单
     */
    public static final int AUTHORITY_BLACK = 1;


    //------------降级熔断校验-------------------
    /**
     * 平均时长
     */
    public static final int DEGRADE_GRADE_RT = 0;
    /**
     * 熔断率
     */
    public static final int DEGRADE_GRADE_EXCEPTION_RATIO = 1;
    /**
     * 异常数
     */
    public static final int DEGRADE_GRADE_EXCEPTION_COUNT = 2;

    /**
     * 降低默认慢速请求量
     */
    public static final int DEGRADE_DEFAULT_SLOW_REQUEST_AMOUNT = 5;
    /**
     * 降级默认最小请求量
     */
    public static final int DEGRADE_DEFAULT_MIN_REQUEST_AMOUNT = 5;

    //------------限流校验-------------------
    /**
     * 直接模式
     */
    public static final int STRATEGY_DIRECT = 0;
    /**
     * 关联模式
     */
    public static final int STRATEGY_RELATE = 1;
    /**
     * 链路模式
     */
    public static final int STRATEGY_CHAIN = 2;
}
